﻿using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using SchoolsBI;

public partial class Admin_Usuarios : System.Web.UI.Page
{

    static Usuario oUsuario = new Usuario();
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack) { FillGrid(); }
    }
    protected void cmdAccion_Click(object sender, EventArgs e)
    {
        Save();
        FillGrid();
        Clear();
    }
    private void FillGrid()
    {
        GridView1.DataSource = Profesor.Tabla("select * from usuario order by 2");
        GridView1.DataKeyNames = new string[] { "IdUsuario" };
        GridView1.AutoGenerateColumns = false;
        GridView1.DataBind();
        cmdAccion.Text = "Nuevo";

    }
    void Save()
    {
        switch (cmdAccion.Text)
        {
            case "Nuevo":
                FormToObjet();
                oUsuario.Crear();
                break;
            case "Modificar":
                FormToObjet();
                oUsuario.Actualizar();
                break;
            case "Eliminar":
                oUsuario.Borrar();
                break;
        }
    }
    

    protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
    {

        oUsuario= Usuario.Buscar("IdUsuario=" + GridView1.SelectedValue.ToString());
        showData();
        cmdAccion.Text = "Modificar";
    }

    void showData()
    {
        ObjetToForm();
    }

    protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {
        oUsuario = Usuario.Buscar("IdUsuario=" + GridView1.DataKeys[e.RowIndex].Value.ToString());
        showData();
        cmdAccion.Text = "Eliminar";
    }
    protected void GridView1_PageIndexChanged(object sender, EventArgs e)
    {

    }
    protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
        GridView1.PageIndex = e.NewPageIndex;
        Clear();
    }

    void FormToObjet()
    {
       // oUsuario.IdUsuario = int.Parse( txtIdUsuario.Text);
        oUsuario.Apellido = txtApellido.Text;
        oUsuario.Nombre = txtNombre.Text;
        oUsuario.IdPerfil = cboPerfil.ValueInt;
        oUsuario.Login = txtLogin.Text;
        oUsuario.Pass = txtPass.Text;
        oUsuario.Habilitado = 1;
        oUsuario.IdSede = cboSede.ValueInt;
        oUsuario.IdProfesor = CboProfesor.ValueInt;
    }
    void ObjetToForm()
    {
        txtIdUsuario.Text = oUsuario.IdUsuario.ToString();
        txtApellido.Text = oUsuario.Apellido;
        txtNombre.Text = oUsuario.Nombre;
        cboPerfil.Value= oUsuario.IdPerfil.ToString();
        txtLogin.Text = oUsuario.Login;
        txtPass.Text = oUsuario.Pass;
        txtHabilitado.Text = oUsuario.Habilitado.ToString();
        cboSede.Value = oUsuario.IdSede.ToString();
        CboProfesor.Value = oUsuario.IdProfesor.ToString();
    }
    void Clear()
    {
        txtIdUsuario.Text = "";
        txtApellido.Text = "";
        txtNombre.Text = "";
       // txtIdPerfil.Text = "";
        txtLogin.Text = "";
        txtPass.Text = "";
        txtHabilitado.Text = "";
        CboProfesor.Value = "-1";
        
    }



}
